ІТЕРАЦІЙНІ МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
ІКТА
Факультет:
ЗІ
Кафедра:
Не вказано

Інформація про роботу

Рік:
2015
Тип роботи:
Звіт про виконання лабораторної роботи
Предмет:
Комп’ютерні методи дослідження інформаційних процесів та систем
Група:
ЗІ 21

Частина тексту файла

МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ «ЛЬВІВСЬКА ПОЛІТЕХНІКА» ІКТА кафедра БІТ Звіт про виконання лабораторної роботи №3 з курсу: «Комп’ютерні методи дослідження інформаційних процесів та систем» на тему: «ІТЕРАЦІЙНІ МЕТОДИ РОЗВ’ЯЗУВАННЯ СИСТЕМ ЛІНІЙНИХ АЛГЕБРАЇЧНИХ РІВНЯНЬ» Львів 2015 Мета роботи – ознайомлення з ітераційними методами розв’язування систем лінійних алгебраїчних рівнянь. ЗАВДАННЯ ДО ЛАБОРАТОРНОЇ РОБОТИ Розв’язати систему лінійних алгебраїчних рівнянь методами простої ітерації або Зейделя.  ,    3.Блок-схема алгоритму програми 4. Список ідентифікаторів констант, змінних, функцій, використаних у блок-схемі алгоритму і програмі, та їх пояснення WriteLine , ReadLine – функції вводу-виводу даних for – оператор циклу; a – матриця коефіцієнтів A – матриця а, зведена до нормального вигляду x – стовпцева матриця розв’язків 5. Текст програми using System; namespace Palko { class Laba { public int i, j; public int n = 4; public double m, k, p, f, t, S, Sum; public double E = 0.0001; public double[,] A; public double[] x; public double[,] a; public double[] b; public void vvid() { Console.Write(" k="); k = Convert.ToInt32(Console.ReadLine()); Console.Write(" p="); p = Convert.ToInt32(Console.ReadLine()); S = 0.2 * k; t = 0.2 * p; } public void vyvid() { for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { Console.Write(a[i, j]); Console.Write("\t"); } Console.WriteLine(" " + b[i]); } Console.WriteLine(); } public void zeidel() { a = new double[n, n]; b = new double[n]; A = new double[n, n]; x = new double[n]; a[0, 0] = 13.3; a[0, 1] = (12.62 + S); a[0, 2] = 4.1; a[0, 3] = 1.9; a[1, 0] = 3.92; a[1, 1] = 8.45; a[1, 2] = (1.78 - S); a[1, 3] = 1.4; a[2, 0] = 3.77; a[2, 1] = (1.21 + S); a[2, 2] = 8.04; a[2, 3] = 0.28; a[3, 0] = 2.21; a[3, 1] = (3.65 - S); a[3, 2] = 1.69; a[3, 3] = 9.99; b[0] = (-10.55 + t); b[1] = 12.21; b[2] = (15.45 - t); b[3] = -8.35; Console.WriteLine("Система рiвнянь :"); Console.WriteLine(); vyvid(); for (i = 0; i < n; i++) { for (j = 0; j < n; j++) { if (i == j) { A[i, j] = 0; } else { A[i, j] = -a[i, j] / a[i, i]; } } b[i] = b[i] / a[i, i]; } Console.WriteLine(); Console.WriteLine("Початкове наближення:"); for (i = 0; i < n; i++) { Console.Write("x(" + (i + 1) + ")=" + x[i]+"\n"); } int v = 0; do { m = 0; v = v + 1; for (i = 0; i < n; i++) { Sum = 0; for (j = 0; j < n; j++) { Sum += A[i, j] * x[j]; } f = x[i]; x[i] = b[i] + Sum; if ((Math.Abs((x[i] - f)) > m)) m = (Math.Abs(x[i] - f)); } } while (m > E); Console.WriteLine("Кiлькiсть iтерацiй:"+(+v)); Console.WriteLine(); Console.WriteLine("Результати :"); for (i = 0; i < n; i++) { Console.WriteLine("x(" ...
Антиботан аватар за замовчуванням

30.03.2016 11:03

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Завантаження файлу

Якщо Ви маєте на своєму комп'ютері файли, пов'язані з навчанням( розрахункові, лабораторні, практичні, контрольні роботи та інше...), і Вам не шкода ними поділитись - то скористайтесь формою для завантаження файлу, попередньо заархівувавши все в архів .rar або .zip розміром до 100мб, і до нього невдовзі отримають доступ студенти всієї України! Ви отримаєте грошову винагороду в кінці місяця, якщо станете одним з трьох переможців!
Стань активним учасником руху antibotan!
Поділись актуальною інформацією,
і отримай привілеї у користуванні архівом! Детальніше

Оголошення від адміністратора

Антиботан аватар за замовчуванням

пропонує роботу

Admin

26.02.2019 12:38

Привіт усім учасникам нашого порталу! Хороші новини - з‘явилась можливість кожному заробити на своїх знаннях та вміннях. Тепер Ви можете продавати свої роботи на сайті заробляючи кошти, рейтинг і довіру користувачів. Потрібно завантажити роботу, вказати ціну і додати один інформативний скріншот з деякими частинами виконаних завдань. Навіть одна якісна і всім необхідна робота може продатися сотні разів. «Головою заробляти» продуктивніше ніж руками! :-)

Новини